Симетричні та асиметричні методи зашифрування інформації

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра автоматики та телемеханіки

Інформація про роботу

Рік:
2005
Тип роботи:
Курсова робота
Предмет:
Методи та засоби криптографічних перетворень
Група:
ІБ – 42

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” Кафедра автоматики та телемеханіки Курсова робота з курсу: „Методи та засоби криптографічних перетворень” на тему: “Симетричні та асиметричні методи зашифрування інформації” Львів – 2005 Зміст Завдання 1 Теоретичні відомості Вибір ключа Блок-схема алгоритму Список ідентифікаторів Текст програми Відкритий текст Результат зашифрування Завдання 2 Теоретичні відомості Вибір ключа Зашифрування Розшифрування Висновок Завдання 1 Вибрати ключі та розробити програму для за шифрування файлу даних заданим афінним шифром. Тип афінного шифру визначається останньою цифрою i НЗК. Об‘єм алфавіту визначається передостанньою цифрою j НЗК і дорівнює . i i mod 6 Тип афінного шифру j Розрядність алфавіту  Об‘єм алфавіту   4 4 Зсуву -го порядку 4 9 512   Теоретичні відомості Вибір ключів  Блок-схема алгоритму  Список ідентифікаторів Ідентифікатори Призначення  const int a[2]={123, 199} Ключ  const int n=512 Розмір алфавіту  FILE *fin Вхідний файл  FILE *fout Зашифрований файл  int eoffin Прапорець кінця файлу  int x_OK Прапорець готовності символа  unsigned long buf1 Вхідний буфер (32 біти)  unsigned long buf2 Вихідний буфер (32 біти)  unsigned long x Проміжний символ (9 біт)  int c1 Лічильник непрочитаних бітів вхідного буфера  int c2 Лічильник незаповнених бітів вихідного буфера  int c3 Лічильник символів для реалізації блокового шифрування   Текст програми #include <stdio.h> #include <math.h> #include <conio.h> #include <stdlib.h> #include <string.h> const int a[2]={103, 199}, n=512; void main(void) { char *str; FILE *fin, *fout; int eoffin=0, x_OK=1; unsigned long buf1, buf2 = 0, x; int c1=32, c2=32, c3=0; if ( (fin=fopen("c:\\file.pl", "rb")) == NULL ) { printf("cannot open the file data.fb"); getch(); exit(1); } else if ( (fout=fopen("c:\\file.enc", "wb")) == NULL ) { printf("cannot open the file data.fbc"); getch(); exit(1); } else { if (fread(&buf1, 1, 4, fin) != 0) while (!eoffin) { if (c1<=0) { if (fread(&buf1, 1, 4, fin) != 0) { x |= (buf1 << (9+c1)) & 511; buf1 >>= (-c1); c1 += 32; x_OK = 1 & !(c1==32); } else { eoffin = 1; x_OK = 1; } } else { x = buf1 & 511; buf1 >>= 9; c1 -= 9; x_OK = 1 & (c1>=0); } /*--------------------------------*/ if (x_OK) { x = (unsigned int)(fmod(a[c3]+x, n)); if (c3==1) c3=0; else c3++; itoa(x, str, 10); fputs(strcat(str, " "), stdout); buf2 |= x << (32-c2); c2 -= 9; if (c2<=0) { fwrite(&buf2, 4, 1, fout); buf2 &= 0; if (c2==0) c2 = 32; else { buf2 |= x >> (9+c2); c2 += 32; } } } } fcloseall(); getch(); } } Відкритий текст Звертаючи увагу на своєрідність історичних форм спільності людей, необхідно підкреслити надзвичайну важливість правильності розуміння категорії "нація" та філософських аспектів національного питання. Звичайно, своєрідність різних філософських підходів до проблеми нації виявляється лише в контексті системних співвідношень нації, народу, етносу та іні Тому без зясуванння співвідношення цих феноменів, не можна, адекватно зрозуміти сутність нації. Водночас недопустимо ототожнювати специфічні сфери філософського дослідження таких історичних спільностей людей, як народ, нація, етнос, та їх політичне, юридичне тлумачення і використання в суспільно-політичній практиці, в практиці законотворчості. Зв'язок між цими сферами, звичайно, є. Проте політичні, юридичні, морально-етичні висновки з філософських концепцій та практика тієї чи іншої конкретної політики і права, виразу морального або аморального вимірів поведінки людей у сфері расових і міжрасових, національних та міжнаціональних взаємин не тільки,.можуть бути, а й реально бувають настільки неодн...
Антиботан аватар за замовчуванням

01.01.1970 03:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини